import { NgModule } from '@angular/core';
import { RouterModule } from '@angular/router';
import { MatButtonModule } from '@angular/material/button';
import { MatIconModule } from '@angular/material/icon';

import { BaseSharedModule } from '@base/shared.module';
import { BaseHighlightModule } from '@base/components';

import { DocsDirectivesBaseIfOnDomComponent } from 'app/main/documentation/directives/baseIfOnDom/base-if-on-dom.component';
import { DocsDirectivesBaseInnerScrollComponent } from 'app/main/documentation/directives/baseInnerScroll/base-inner-scroll.component';
import { DocsDirectivesBaseMatSidenavComponent } from 'app/main/documentation/directives/baseMatSidenav/base-mat-sidenav.component';
import { DocsDirectivesBasePerfectScrollbarComponent } from 'app/main/documentation/directives/basePerfectScrollbar/base-perfect-scrollbar.component';

const routes = [
    {
        path     : 'base-if-on-dom',
        component: DocsDirectivesBaseIfOnDomComponent
    },
    {
        path     : 'base-inner-scroll',
        component: DocsDirectivesBaseInnerScrollComponent
    },
    {
        path     : 'base-mat-sidenav',
        component: DocsDirectivesBaseMatSidenavComponent
    },
    {
        path     : 'base-perfect-scrollbar',
        component: DocsDirectivesBasePerfectScrollbarComponent
    }
];

@NgModule({
    declarations: [
        DocsDirectivesBaseIfOnDomComponent,
        DocsDirectivesBaseInnerScrollComponent,
        DocsDirectivesBaseMatSidenavComponent,
        DocsDirectivesBasePerfectScrollbarComponent
    ],
    imports     : [
        RouterModule.forChild(routes),

        MatButtonModule,
        MatIconModule,

        BaseSharedModule,
        BaseHighlightModule
    ]
})
export class DirectivesModule
{
}
